/**
Autor: Jayme S Barbosa.
*/
/**
Autor: Jayme S Barbosa.
*/
#ifndef TABELADESIMBOOS_H_INCLUDED
#define TABELADESIMBOOS_H_INCLUDED

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define TAMANHO 500009
#define TAMANHO_VETOR_URLS 8192

class Documento{
    //friend class TabeladeSimbolos;
    public:
        /**Atributos*/
        int id;
        int totalPalavrasDistintas;
        int indiceUrl;
    //public:
        float relevancia;
        Documento* proximo;/**ponteiro para proxima Documento*/
        Documento(); /**construtor**/
        ~Documento();/**destrutor*/
};

class TabeladeSimbolos {
    private:
        /**atributos privados*/
        unsigned int tamanhoAtualVetorUrls;
        unsigned int indiceProximaUrl;
        char* vetorUrls;///vetor que ira armazenar todas as urls
        int hashSimples(int doc_id);
        int adicionaUrl(char *url);
    public:
        Documento* tabelaSimbolos[TAMANHO];
        TabeladeSimbolos();/**construtor*/
        Documento* busca(int doc_id);
        bool insere(int doc_id, int totalPalavrasDistintas, char* url, float relevancia);
        char* retornaUrl(int doc_id);
        int qtdTermosDistintos(int doc_id);
         /**Destrutor*/
        ~TabeladeSimbolos();
};


#endif // TABELADESIMBOOS_H_INCLUDED
